/**
 * Wihidum - Efficient Broker Hierarchy for Publish Subscribe Middleware
 *
 * License      :   Apache License 2.0
 * Home Page    :   http://code.google.com/p/wihidum/
 * Mailing List :   wihidum@googlegroups.com
 */

package lk.mrt.cse.wihidum.storage;

import javax.persistence.*;

/**
 * Represents subscriber object
 */
@Entity
public class Subscriber
{

    //private String id;
    @Id
    private SubscriberIdentifier subscriberIdentifier;
    private String replyToAddress;
    private String messageID;
    private String eventSourceEPR;
    private String notifyToAddress;

    public SubscriberIdentifier getSubscriberIdentifier()
        {
            return subscriberIdentifier;
        }

        public void setSubscriberIdentifier(SubscriberIdentifier subscriberIdentifier)
        {
            this.subscriberIdentifier = subscriberIdentifier;
        }

    //there should be a no arg constructor to have a constructor with args
    public Subscriber()
    {

    }

    public Subscriber(SubscriberIdentifier sudIdentifier)
    {
        this.subscriberIdentifier=subscriberIdentifier;
    }
    //@GeneratedValue (strategy = GenerationType.IDENTITY)
   /* public String getId ()
    {
        return id;
    }*/

    /*public void setId (String id)
    {
        this.id = id;
    }
     */

    public String getReplyToAddress ()
    {
        return replyToAddress;
    }

    public void setReplyToAddress (String replyToAddress)
    {
        this.replyToAddress = replyToAddress;
    }

    public String getMessageID ()
    {
        return messageID;
    }

    public void setMessageID (String messageID)
    {
        this.messageID = messageID;
    }

    public String getEventSourceEPR ()
    {
        return eventSourceEPR;
    }

    public void setEventSourceEPR (String eventSourceEPR)
    {
        this.eventSourceEPR = eventSourceEPR;
    }


    public String getNotifyToAddress ()
    {
        return notifyToAddress;
    }

    public void setNotifyToAddress (String notifyToAddress)
    {
        this.notifyToAddress = notifyToAddress;
    }
}
